1. Field of the Invention
The present invention relates to mobile stations, such as mobile stations in a mobile wireless communication system using a W-CDMA communication protocol.
2. Description of the Related Art
Currently, standardization of the W-CDMA (UMTS) protocol, a protocol for third generation mobile communication systems, is proceeding under the 3GPP (3rd Generation Partnership Project). HSDPA (High Speed Downlink Packet Access), which provides a maximum downlink transfer speed of approximately 14 Mbps, has been specified as one of the themes for standardization.
HSDPA is characterized in that it employs an adaptive modulation and coding (AMC) scheme, switching for example between the QPSK modulation scheme and 16-QAM scheme adaptively according to the wireless environment between the base station and mobile station.
Furthermore, HSDPA employs an H-ARQ (Hybrid Automatic Repeat ReQuest) scheme. Under H-ARQ, when a mobile station detects an error in data received from a base station, a retransmission request is made by the mobile station in question to the base station. The base station performs retransmission of data upon receiving this retransmission request, and thus the mobile station performs error correction decoding using both the already received data and the retransmitted received data. In this way, H-ARQ increases the gain of error correction decoding and reduces the number of retransmissions by effectively utilizing already received data, even if it contains errors.
The main wireless channels used in HSDPA include HS-SCCH (High Speed-Shared Control Channel), HS-PDSCH (High Speed-Physical Downlink Shared Channel) and HS-DPCCH (High Speed-Dedicated Physical Control Channel).
HS-SCCH and HS-PDSCH are both downlink (i.e. in the direction from the base station to the mobile station) shared channels. HS-SCCH is a control channel for transmitting various parameters relating to the data transmitted on HS-PDSCH. In other words, it is a channel which notifies (announces) that data is to be transmitted via HS-PDSCH.
The various parameters include, for example, modulation scheme information indicating which modulation scheme is used to transmit data on HS-PDSCH, the spreading code allocation number (code number), information on the rate matching pattern applied to the transmitted data, etc.
Furthermore, HS-DPCCH is an uplink (in the direction from the mobile station to the base station) dedicated control channel, which is used by the mobile station for sending ACK or NACK signals to the base station depending on whether or not there was an error in the data received via HS-PDSCH. Namely, it is a channel used for transmitting the reception result for data received via HS-PDSCH. If the mobile station fails to receive data (if the received data has a CRC error, etc.), a NACK signal will be transmitted from the mobile station and the base station will accordingly perform retransmission control.
In addition, HS-DPCCH is used by a mobile station, which has determined the reception quality (e.g. SIR) of the signal received from the base station, to transmit the results thereof periodically to the base station as CQI (Channel Quality Indicator) information. The base station judges the goodness of the downstream wireless environment based on the received CQI information, and if it is good, switches to a modulation scheme allowing transmission of data at higher speed, or switches to a modulation scheme which transmits data at a lower speed if the wireless environment is not good (i.e., performs adaptive modulation).
Channel Structure
Next, the channel configuration of HSDPA will be described.
FIG. 1 is a drawing which illustrates the channel configuration of HSDPA. Since W-CDMA employs a code division multiplexing scheme, the individual channels are separated by code.
First, the channels which have not been explained will be briefly described.
CPICH (Common Pilot Channel) and SCH (Synchronization Channel) are downlink shared channels.
CPICH is a channel for transmitting a so-called pilot signal, and is used by the mobile station for channel estimation, cell search and as timing reference for other downlink physical channels in the same cell. SCH strictly speaking includes P-SCH (Primary SCH) and S-SCH (Secondary SCH), and is a channel transmitted in bursts in 256 chips at the head of each slot. SCH is received by mobile stations which perform three-step cell search and is used for establishing slot synchronization and frame synchronization.
Next, the timing relationship of the channels will be described using FIG. 1.
As shown in the drawing, in each channel, one frame (10 ms) consists of 15 slots (each slot comprises a 2560 chip length). As described above, CPICH is used as a reference for other channels, so the head of the P-CCPCH and HS-SCCH frames is aligned with the head of the CPICH frame. Here, the head of the HS-PDSCH frame is delayed by 2 slots relative to HS-SCCH, etc., which is to make it possible for the mobile station to perform demodulation of HS-PDSCH with the modulation scheme corresponding to the received modulation scheme after receiving modulation scheme information via HS-SCCH. Furthermore, HS-SCCH and HS-PDSCH comprise sub-frames of 3 slots.
HS-DPCCH is an uplink channel. Its first slot is used for transmitting an ACK/NACK signal indicating the HS-PDSCH reception result from the mobile station to base station approximately 7.5 slots after the HS-PDSCH reception. Furthermore, the second and third slots are used for periodically transmitting CQI information as feedback for adaptive modulation control to the base station. Here, the transmitted CQI information is calculated based on the reception environment (e.g. the SIR determination result for CPICH) as determined in the period from 4 slots until 1 slot before the CQI transmission.
The ACK and NACK signals used for notifying whether reception of HS-PDSCH was or was not possible may be repeated multiple times depending on the settings.
Namely, as illustrated in FIG. 1, having received an HS-PDSCH transmission announcement in the first sub-frame (A) of HS-SCCH, the mobile station demodulates and decodes HS-PDSCH (first sub-frame E), which is delayed by two slots, performs a CRC check, and detects if any error is present.
Here, in the case where a determination of no error was made, as shown in the drawing, an ACK signal is transmitted in the first slot (slot C in the drawing) of the sub-frame delayed by approximately 7.5 slots from the HS-PDSCH reception, and transmission of the same ACK signal is repeated in the first slot (slot D in the drawing) of the subsequent sub-frame. Of course, if there was an error, a NACK signal would be repeatedly transmitted.
It is of course also possible to not have the reception result transmitted repeatedly, but repeating the transmission of the ACK signal or NACK signal N times in this manner (N is a natural number) ensures more reliable reception of the ACK signal or NACK signal by the base station and prevents unneeded retransmission control.
However, in order for transmission of the ACK signal or NACK signal to be repeated in the next sub-frame, HS-PDSCH cannot be transmitted to the same mobile station in the following N sub-frames, including the next sub-frame (F).
This is in order to prevent losing the ability to distinguish between whether the ACK signal (slot D in the drawing) is the repeated transmission of the reception result (ACK or NACK signal) relating to the first sub-frame E of HS-PDSCH corresponding to the first sub-frame A of HS-SCCH, or the initial transmission of the reception result (ACK or NACK signal) relating to the second sub-frame F of HS-PDSCH corresponding to the second sub-frame B of HS-SCCH.
Next, the content and coding procedure of the data transmitted on HS-SCCH will be described.
Data Transmitted on HS-SCCH
The following data are transmitted on HS-SCCH. These data are used for reception processing of HS-PDSCH, which is transmitted after a 2 slot delay.
(1) Xccs (Channelization Code Set information)
(2) Xms (Modulation Scheme information)
(3) Xtbs (Transport Block Size information)
(4) Xhap (Hybrid ARQ Process information)
(5) Xrv (Redundancy and constellation Version)    (6) Xnd (New Data indicator)    (7) Xue (User Equipment identity)(1) through (7) will now be described.
(1) Xccs is a datum indicating the spreading code used for transmitting data on HS-PDSCH (e.g. a datum indicating a multi-code number and code offset combination), and consists of 7 bits.
(2) Xms is a datum indicating that the modulation scheme used on HS-PDSCH is either QPSK or 16-QAM, and consists of 1 bit.
(3) Xtbs is a datum used for computing the transport block size of data transmitted on HS-PDSCH (the size of data transmitted in one HS-PDSCH sub-frame), and consists of 6 bits.
(4) Xhap is a datum indicating the H-ARQ process number, and consists of 3 bits. The base station is unable to judge whether or not data was successfully received by the mobile station until the base station receives an ACK or NACK. However, if one were to wait until receiving an ACK or NACK before transmitting a new data block, the transport efficiency would drop. Thus, to allow transmission of new data blocks before an ACK or NACK is received, a process number is defined for each data block transmitted in a sub-frame, and the mobile station discriminates the reception processing it performs according to the process number. In other words, when performing retransmission, the base station assigns a process number to transport blocks under the condition that the same process number is assigned as that of the previously sent block, and transmits it via HS-SCCH as Xhap.
Therefore, the mobile station classifies the data received via HS-PDSCH based on the Xhap it has received, distinguishing between new transmission and retransmission within a data stream for which the same process number was provided via HS-SCCH based on Xnd, which will be discussed under (6), combining new data with retransmitted data, and the like.
(5) Xrv is a datum indicating the redundancy version (RV) parameters (s, r) and constellation version parameter (b) for HS-PDSCH retransmission, and consists of 3 bits.
s is a bit which indicates whether or not systematic bits are to be prioritized in the rate matching, which will be described later. For example, if s=1, the systematic bits are prioritized, and if s=0, the systematic bits are not prioritized. r indicates the bit pattern of puncture and repetition and b indicates the constellation rearrangement pattern for rate matching.
During retransmission, considering the combining on the receiving side, it is desirable to vary the transmitted bits or change the constellation arrangement, so Xrv is used by cycling it between 0 and 7. Furthermore, since there is no need to change Xrv for each initial transmission, the initial value for new transmissions can be fixed.
(6) Xnd is a datum indicating whether the block transmitted on HS-PDSCH is a new block or a retransmitted block, and consists of 1 bit. For example, when transmitting a new block, it would be switched from 0 to 1 or from 1 to 0, and for retransmission, it would not be switched and the same value would be used.
For example, when performing new transmission, retransmission, new transmission, retransmission, retransmission and new transmission in that order, the bits would change as follows: 1, 1, 0, 0, 0, 1.
(7) Xue is a datum indicating mobile station identification information, and consists of 16 bits.
Coding of Data Transmitted on HS-SCCH
FIG. 2 is a drawing illustrating the coding procedure (coding device) for the aforementioned data (1) through (7) which are transmitted on HS-SCCH. This coding is performed mainly by the base station.
In the drawing, 1 is a coding unit, 2 is a rate matching unit, 3 is a multiplier, 4 is a CRC computation unit, 5 is a multiplier, 6 is a coding unit, 7 is rate matching unit, 8 is a coding unit and 9 is a rate matching unit.
Next, the operation of each block will be explained.
(1) Xccs, represented by 7 bits (x1,1˜x1,7), and (2) Xms, represented by 1 bit (x1,8), are input into the coding unit 1 as a datum of 8 bits total. Here, the first number of the subscript signifies that this relates to data transmitted in the first part (first slot), and the second number, separated by a comma (,), indicates the number of the bit.
Coding unit 1 appends 8 tail bits to the input data and performs convolution coding with a code rate of ⅓ on the total of 16 bits. Therefore, the coded data becomes a total of 48 bits, and is supplied as z1,1˜z1,48 to the rate matching unit 2. Rate matching unit 2 performs puncture or repetition processing or the like on specific bits to adjust them to a bit number that will fit into the first slot (here, assumed to be 40 bits), and outputs the result (r1,1˜r1,40).
Data from the rate matching unit 2 is multiplied with c1˜c40 by the multiplier 3 and output as s1,1˜s1,40, and is transmitted in the first slot (first part), which is the slot at the head of the sub-frame of HS-SCCH in FIG. 1.
Here, c1˜c40 are obtained by taking data from (7) Xue (xue1˜xue16), appending 8 tail bits thereto and then convolution coding with a coding rate of ½ in coding unit 8 to obtain b1˜b48, and further performing the same sort of bit adjustment in rate matching unit 9 as was done in rate matching unit 2.
Meanwhile, the 6-bit (3) Xtbs (x2,1˜x2,6), 3-bit (4) Xhap (x2,7˜x2,9), 3-bit (5) Xrv (x2,10˜x2,12) and 1-bit (6) Xnd (x2,13) are input as a total of 13 bits y2,1˜y2,13 together with the 16-bits y2,14˜y2,29, for a total of 29 bits y2,1˜y2,29, into coding unit 6.
Here, y2,14˜y2,29 are obtained by performing CRC computation processing on the total of 21 bits of (1) through (6) in the CRC computation unit 4 and multiplying c1˜c16, as the result of the computation, by (7) Xue (xue1˜xue16).
The y2,1˜y2,29 which are input into coding unit 6 have 8 tail bits added thereto and are convolution coded with a ⅓ coding rate and input as 111-bit data z2,1˜z2,111 into the rate matching unit 7.
The rate matching unit 7 outputs 80 bits, r2,1˜r2,80, by means of the aforementioned puncture or other such processing, and these r2,1˜r2,80 are transmitted in the second part (second and third slots) in 1 sub-frame on HS-SCCH in FIG. 1.
As described above, the data of (1) and (2) are transmitted in the first slot, while (3) through (6) are transmitted in the second through third slots, thus being transmitted distinctly in separate slots; on the other hand, the CRC computation is carried out on them in common, with the CRC computation result being transmitted within the second slot, so detection of reception error becomes possible once both the first and second parts are completely received.
Furthermore, since the data to be transmitted in the first slot is convolution coded by coding unit 1 and then multiplied by (7) Xue in the multiplier 3, when data addressed to another station is received in the first slot, the likelihood generated in the decoding process will be smaller compared to if the data were addressed to the receiving station, thus making it possible to know if there is a high probability of the data not being addressed to the receiving station by comparing the likelihood to a reference value.
Coding of Data Transmitted on HS-PDSCH
Next, the process until the transmission data is transmitted via HS-PDSCH will be described using a block diagram.
FIG. 3 is a diagram illustrating a wireless base station.
In the drawing, 10 represents a control unit which successively outputs the transport data to be transmitted via HS-PDSCH (the data transmitted within one sub-frame) as well performing control of the various units (11 through 26, etc.). The values of (1) through (7) explained in FIG. 2 are given by this control unit 10.
Since HS-PDSCH is a shared channel, it is permitted for the successively output transport data to be addressed to different mobile stations.
11 represents a CRC attachment unit which performs CRC computation on the successively input transport data (data transmitted within the same wireless frame) and attaches the results of CRC computation to the tail of the transport data, and 12 represents a bit scrambling unit which imparts randomness to the transmitted data by applying a bit-unit scramble to the transport data with the CRC computation results attached thereto.
13 represents a code block segmentation unit which segments (e.g. into two equal parts) the input bit-scrambled transport data if it exceeds a certain data length, for the purpose of preventing the computation load of the receiving side decoder from increasing due to excessive length of the data to be coded in the subsequently performed channel coding, or for other purposes. The drawing shows a case where the input data length exceeded a specific data length and the output has been split into two equal parts (segmented into a first data block and second data block). Of course, cases where the number of segments segmented into is other than two are also possible, as are cases where the segments are not equal parts but have different data length.
14 represents a channel coding unit which performs error correction coding individually on each segmented datum. It is preferable to use a turbo coder for the channel coding unit 14.
Thus, the first output, for the first block, contains the important systematic bits (U) which are the same data as the data subjected to coding, the first redundancy bits (U′) obtained by convolution coding of the systematic bits (U), and the second redundancy bits (U″) obtained by interleaving and then similarly convolution coding the systematic bits. Likewise, the second output contains the systematic bits (U), first redundancy bits (U′) and second redundancy bits (U″) for the second block.
15 represents a bit separation unit which separates the first block and second block serially input from the channel coding unit 14 (turbo coder) into systematic bits (U), first redundancy bits (U′) and second redundancy bits (U″) and outputs them.
16 represents a first rate matching unit which performs rate matching, such as puncturing (thinning), on the input data so that the input data (in cases where data is segmented into multiple blocks, all the data of the segmented blocks) will be of a quantity that fits into a specific region of the subsequent virtual buffer unit 17.
17 represents a virtual buffer unit wherein a region is established by the control unit 10 according to the reception processing capacity of the mobile station to be transmitted to, in which region data rate-matched by the first rate matching unit 16 is buffered. For retransmission, by outputting the buffered data, the processing from the CRC attachment unit 11 to the first rate matching unit 16 can be omitted, but in cases where one wishes to modify the coding rate for retransmission or the like, it is desirable to re-output the transmission data stored in the control unit 10 and not use the buffered data. It is also possible to actually provide no buffer for the virtual buffer 17 and simply make it pass-through. In this case, retransmitted data would be re-output from the control unit 10.
18 represents a second rate matching unit for adjusting data to a length that can fit into a sub-frame designated by the control unit 10; it adjusts the data length of input data by performing puncture (thinning) and repetition processing so as to obtain the designated data length.
This second rate matching unit 18 performs rate matching according to the previously explained RV parameters.
Namely, depending on the RV parameters, when s=1, rate matching is performed so as to leave as many systematic bits as possible, and when s=0, it is permitted on the contrary to reduce the systematic bits and leave more redundancy bits. Furthermore, puncture and rate matching are preformed by a pattern that follows r.
19 represents a bit collection unit which arranges the data from the second rate matching unit 19 into a plurality of bit sequences. Namely, data of the first block and data of the second block are arranged according to a specific bit arrangement method to output a plurality of bit sequences for designating signal points on a phase plane. Since a 16-QAM modulation scheme is used in this embodiment example, the bit sequence consists of 4 bits. When using a 64-QAM modulation scheme, the bit sequence would be made 6 bits, and when using a QPSK modulation scheme, the bit sequence would be made 2 bits.
20 segments and outputs the bit sequences into the same number of branches as the spreading code number indicated by the control unit 10. Namely, it represents a physical channel segmentation unit which, when the code number in the transmission parameters provided by the control unit 10 is N, maps and outputs the input bit sequence sequentially to branches 1 through N.
21 represents an interleaving unit which performs interleaving on the bit sequences of N branches and outputs the result.
22 represents a constellation rearrangement unit for 16-QAM, which is capable of rearranging bits within each input bit sequence. Bit rearrangement is performed according to the previously described constellation version. Examples of bit rearrangement include swapping the high order and low order bits. It is preferable to perform bit swapping for multiple bit sequences according to the same rule.
23 represents a physical channel mapping unit which maps the bit sequences of N branches onto the corresponding spreading block of the subsequent spreading unit 24.
24 represents a spreading unit which comprises multiple spreading blocks, each of which outputs a corresponding I and Q voltage based on each bit sequence of N branches and performs spreading thereon with different spreading codes and outputs the result.
25 represents a modulating unit which combines the signals spread by the spreading unit 24, performs e.g. 16-QAM modulation scheme amplitude phase modulation on the result thereof, amplifies it by means of a variable gain amplifier, further frequency-converts it to a wireless signal, and then outputs it to the antenna side as a wireless signal to enable transmission.
Under HSDPA, it is possible to multiplex signals addressed to other mobile stations within sub-frames of the same timing by means of a spreading code, so it is desirable to provide a plurality of sets of 10 through 25, variable gain amplifier, etc. (these will be referred to as transmission sets), combine the output signals of the variable gain amplifiers, frequency-convert them together, and then transmit the result to the antenna side. Of course, since there is a need to separate by code, for the spreading code used by the spreading unit 24 of each transmission set, a different spreading code would be used so as to allow separation.
26 represents a receiving unit, which receives signals from the mobile station received via HS-DPCCH or the like, and provides ACK and NACK signals, CQI, etc. to the control unit 10.
As discussed above, if an ACK signal is received, the next new data is transmitted, but in the case of a NACK signal or a DTX state where there is no response, the control unit 10 performs retransmission control so as to retransmit the transmitted data.
Of course, as described above if the mobile station repeats the transmission of ACK and NACK signals, control would be performed so that data addressed to that mobile station will not be transmitted in the HS-PDSCH sub-frame corresponding to the repeated ACK signal or NACK signal transmitted by the mobile station, and retransmission control would be performed based on the repeatedly transmitted ACK signal or NACK signal.
Retransmission is limited to the maximum number of retransmissions that is set, and if no ACK signal is received from the mobile station upon reaching the maximum number of retransmissions, control is provided to switch to transmission of the next new data.
In cases where a maximum number of retransmissions is not defined, it is possible to start a timer from a new transmission and switch to transmission of the next new data when a specific time period is detected to have elapsed and no ACK signal has been received.
The foregoing was a description of the names and operation of the various units.
Matters relating to HSDPA as discussed above are disclosed for instance in 3G TS 25.212 (3rd Generation Partnership Project: Technical Specification; Group Radio Access Network; Multiplexing and channel coding (FDD)) and 3G TS 25.214 (3rd Generation Partnership Project: Technical Specification; Group Radio Access Network; Physical layer procedures (FDD)).